/**
 * Author:  LiShibin.
 * Date:    2016/9/13.
 * File：   自定义的验证规则.
 */

// 账号校验 字母、数字、下划线组成，字母开头，8-16位。
function account(val){
  return /^(?![^a-z]+$)(?!\D+$)[a-zA-z]\w{7,20}$/.test(val);
}
//登录密码校验 必须包含大写字母小写字母数字且不包含特殊字符与空字符 8-20位
function loginpwd(val){
  return /^(?![^a-z]+$)(?![^A-Z]+$)(?!\D+$)[A-Za-z0-9]{8,20}$/.test(val);
}
//密码校验 8-20位数字
function boxpwd(val){
  return  /^[0-9]{8,20}$/.test(val);
}
function plate(val){
  return  /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/.test(val);
}
// 版本校验 10位数字以内
function version(val) {
  // return  /^[0-9]{10}$/.test(val);
  return /^\d{1,9}$/.test(val);
}
//手机号
function phone(val){
  return  /^1\d{10}$/.test(val);
}
//身份证号
function idCard(val){
  return /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(val);
}
//手机号模糊搜索
function phoneLen(val) {
  return /^\d{1,11}$/.test(val)
}
//身份证模糊搜索
function idCardLen(val) {
  return /^[0-9]{0,17}([0-9]|X{1})$/.test(val)
}
export {loginpwd,boxpwd,phone,idCard, account, version, phoneLen, idCardLen};
